X, Y:ik:LocKnd fp Top, ik:LocKnd.
interface-union(X;Y)(ik)
~
(s,v. if ik dom(X)
then if ik dom(Y)
then then case X(ik)(s,v)
then then of inl(x) => inl inl x then then o| inr(x) => case Y(ik)(s,v) of inl(x) => inl (inr x ) | inr(x) => inr x then else case X(ik)(s,v) of inl(x) => inl inl x | inr(x) => inr x then fi
else case Y(ik)(s,v) of inl(x) => inl (inr x ) | inr(x) => inr x fi )